home *** CD-ROM | disk | FTP | other *** search
- /*
- * CBLibrary - msgtrans
- * Copyright (C) 2003 Chris Bazley
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
- /* Original version by Tony Houghton for !FormText */
-
- #include "swis.h"
-
- #include "err.h"
- #include "msgtrans.h"
-
- static MessagesFD descriptor;
- static char messagebuffer[256] = "";
-
- /* ----------------------------------------------------------------------- */
- /* Function prototypes */
-
- static char *msgs_gen_lookup(const char *token, MessagesFD *file);
-
- /* ----------------------------------------------------------------------- */
- /* Public functions */
-
- MessagesFD *msgs_get_descriptor(void)
- {
- return &descriptor;
- }
-
- /* ----------------------------------------------------------------------- */
-
- char *msgs_lookup(const char *token)
- {
- /* look in application messages file */
- return msgs_gen_lookup(token, &descriptor);
- }
-
- /* ----------------------------------------------------------------------- */
-
- char *msgs_global(const char *token)
- {
- /* look in global messages file */
- return msgs_gen_lookup(token, 0);
- }
-
- /* ----------------------------------------------------------------------- */
-
- char *msgs_lookupsub(const char *token, const char *subA, const char *subB, const char *subC, const char *subD)
- {
- /* look in application messages file, with substitution */
- messagebuffer[0] = '\0';
- RE(_swix(MessageTrans_Lookup, _INR(0,7), &descriptor, token, messagebuffer, sizeof(messagebuffer), subA, subB, subC, subD));
- return messagebuffer;
- }
-
- /* ----------------------------------------------------------------------- */
- /* Private functions */
-
- static char *msgs_gen_lookup(const char *token, MessagesFD *file)
- {
- /* general veneer to MessageTrans_Lookup, placing string in our buffer */
- messagebuffer[0] = '\0';
- RE(_swix(MessageTrans_Lookup, _INR(0,3), file, token, messagebuffer, sizeof(messagebuffer)));
- return messagebuffer;
- }
-